Rewrite guides using skills#35
Conversation
- restructure headings to imperative sentence case and split long sections into focused subsections - reformat API lists with linked names and em-dash descriptions - add intro sentences before every code block, normalize inline comments - replace passive voice, gerund openers, and future tense with active present simple - fix formShape example: type -> comp to match API - add Optimize rendering of large datasets section covering renderType
- convert headings to imperative sentence case, add short descriptions under each - add intro sentences before every code block - replace passive voice and "you need to" phrasing with active present simple - reformat parameter lists with em-dash descriptions - fix broken link to properties overview, replace bold API names with backticks
- split flat content into Prepare a sample dataset, Load data from a local file, and Update data after initialization sections - add intro sentences before every code block - replace passive voice and gerund openers with active present simple - reformat Related articles list with linked API names and em-dash descriptions - add Update data after initialization section covering setConfig() with fetch example - add tip cross-linking renderType for large datasets
- split Applying locales into Apply a built-in locale, Apply a custom locale, and Reset to the default locale sections - convert headings to imperative sentence case, add short descriptions under each - add intro sentences before every code block including those inside details blocks - replace passive voice and gerund openers with active present simple - reformat Related articles list with em-dash descriptions - add Reset to the default locale section covering setLocale() and setLocale(null) - fix worked example in date/time format section: %u replaced with %S (verified against widget source: @wx/lib-dom case %S returns milliseconds, %u token does not exist), June replaced with September to match 2024-09-20 in the example
- convert headings to imperative sentence case, add intro paragraph at the top - add intro sentences before every code block - replace passive voice and gerund openers with active present simple - reformat Related articles list with linked API names and em-dash descriptions - document the setConfirmHandler callback shape (slot, data, confirm fields) inline before the example - add info block on confirm-slot event as an alternative to setConfirmHandler - replace prose-only g2l/l2g description with a typed list
- convert headings to imperative sentence case, add intro paragraph at the top - add intro sentences before every code block - replace passive voice and "you need to" phrasing with active present simple - fix Default style section: replace pivot-* variables (copy-paste from Pivot docs) with real booking-* variables sourced from the widget code (Layout.svelte, Slots.svelte) - fix invalid link tag: type="stylesheet" replaced with rel="stylesheet"
- convert headings to imperative sentence case, add short intros under each - add intro sentences before every code block - replace passive voice and "you need to" phrasing with active present simple - fix events example: invalid date property replaced with start (verified against api/config — booking has start and end, no date) - add cross-link to loading-data guide and data API in the data section - replace bold/italic API references with backticks, normalize inline code comments
- convert headings to imperative sentence case, add short intros under each - add intro sentences before every code block - replace passive voice and "you need to" phrasing with active present simple - add cross-link to loading-data guide and data API in the data section - replace bold/italic API references with backticks, normalize inline code comments
- convert headings to imperative sentence case, add short intros under each - add intro sentences before every code block - replace passive voice and "you need to" phrasing with active present simple - fix unclosed script tag in trial-version import example - fix stray comma in Booking constructor inside mounted() example - fix undefined booking variable in event subscription example (booking -> this.booking) - add cross-link to loading-data guide and data API in the data section - replace bold/italic API references with backticks, normalize inline code comments
- convert headings to imperative sentence case, add short intros under each - add intro sentences before every code block - replace passive voice and "you need to" phrasing with active present simple - add cross-link to loading-data guide and data API in the data section - replace bold/italic API references with backticks, normalize inline code comments
- convert bold rule labels (Rule 1-7) to ### headings in imperative sentence case - rewrite section headings (Main concepts, Example, conversion rules) to imperative - add intro sentences before every JSON code block - replace future tense and passive voice with active present simple - format the slot strategies list with linked data API names - fix internal cross-link anchors after heading renames; link Rule 7 reference - remove trailing blank lines at EOF
- convert bold rule labels (Rule 1-7) to ### headings in imperative sentence case - rewrite section headings (Main concepts, Example, conversion rules) to imperative - add intro sentences before every JSON code block - replace future tense and passive voice with active present simple - format the slot strategies list with linked data API names - fix internal cross-link anchors after heading renames; link Rule 7 reference - remove trailing blank lines at EOF
- reword "Converting events to slots is the core..." to "Event-to-slot conversion is the core..." in eventcalendar and scheduler guides - grammar review found gerund subject openers; rest of the 12 guides clean
- themeConfig: og:image (1200x630), og:type=website, og:site_name, og:locale, twitter:card, twitter:site - StructuredData component: emits TechArticle for guides, APIReference for /api/*, SoftwareApplication for site root - DocItem/Metadata swizzle adds twitter:title/description (not emitted by Docusaurus PageMetadata) and JSON-LD - og-default-booking.png placed in static/img/
- rename shadowing `booking` variable to `widget` in samples - fix template param `card` to `item` in configuration guide - fix review property `star` to `stars` in dataset examples - fix selected date class `.selected` to `.wx-selected` - use `var(--wx-border)` for booking separator variable - clarify setConfirmHandler relation to confirm-slot event
- cardShape: default subtitle is true, not false - cardTemplate: rename param card to item in text and samples - data: mark slots optional, fix availableSlots shape to [timestamp, duration][] - data: fix review property star to stars - filterShape: suggest is optional, not required - formShape: wrap usage in array, fix type to comp in example - locale: fix shadowing booking var to widget, use booking.locales.de
- confirm-slot example: obj.id -> obj.slot.id (payload is { slot, data, confirm })
- select-item-date @short: now reflects date selection, not item selection
- fix "abject" typo in confirm-slot parameters
- rename const booking -> widget in examples to avoid shadowing the global namespace
- setConfig example: drop the extra `config` wrapper, pass props directly - setLocale: use booking.locales.de instead of undefined `de`, fix Usage notation - serialize Usage: return type [] -> object[] - rename const booking -> widget in examples to avoid shadowing the global namespace
- getReactiveState example: state.cards -> state.data (no `cards` key in state) - exec example: drop the extra `filterData` wrapper, pass filter values directly - detach: fix non-existent `open-filter` event mention -> select-slot - getState/getReactiveState: add missing state fields start/end/renderType, refine selectedSlot comment - rename const booking -> widget in examples to avoid shadowing the global namespace
- convert absolute links (/api/config/booking-data) to the project's docs-root-relative .md form (api/config/booking-data.md) expected by the dhx-md-data-transformer loader - fix 4 stale anchors after configuration.md rewrite (defining->define, configuring->configure) - leave overview empty-text links, assets, /category routes and external links untouched - verified with yarn build: 0 broken links
- rewrite overview empty links to docs-root-relative form ([](api/config/booking-data.md)) to match pivot and the normalizeMarkdownMdLinks convention - update onEmptyLinkMatch in docusaurus.config.js to resolve targets from the docs root and emit a root-absolute href without .md, so the sidebar_label text fills in (tables rendered empty otherwise) - add i18n folder to the transformer plugin include, matching pivot - verified with yarn build: 0 broken links, all overview tables filled
- replace bold with backticks for API names: config properties, parameters, events, helpers and method properties - replace bold with backticks for literal values (true/false/text/textarea) - normalize "Related articles" label so the colon sits outside the bold
- exec: return type void -> Promise, note async behavior - on/intercept: document optional config arg with tag (used by detach) - formShape: document validation and errorMessage fields - confirm-slot: data value type any -> string - cardShape: clarify category param wording
- configuration: slot range is six days (four on narrow screens), not five (DATE_RANGE=6) - angular: drop placeholder link on destructor() mention - react: use npm start for CRA dev server instead of npm run dev - localization: minutes/seconds format range starts at 00, not 01
| <body> | ||
| <div id="root"></div> | ||
| <script> | ||
| const booking = new booking.Booking("#root", { |
| days: [3, 4, 5] | ||
| }, | ||
| ], | ||
| usedSlots: [getDate(0, 12), getDate(0, 18)] |
There was a problem hiding this comment.
there are 5 cases of this getDate() but no definition of it, and it's not that obvious what it does exactly, what are those parameters for. better give something like array or string, or date or whatever is expected there
|
|
||
| # How to start | ||
|
|
||
| This clear and comprehensive tutorial will guide your through the steps you need to take in order to get a full-functional Booking application on a page. |
There was a problem hiding this comment.
will guide your through - a typo. you, not your
|
|
||
| - `text` - (optional) if **true**, the text input field is displayed (default); if **false**, the text field is hidden | ||
| - `text` - (optional) if `true`, the text input field is displayed (default); if `false`, the text field is hidden | ||
| - `id` - (required) the id of a card |
There was a problem hiding this comment.
Source (store/src/types.ts: TFilterText.id: keyof ICard) says it's a card field name (e.g. category, title)
| cardShape: {}, // an object with settings for cards | ||
| filteredData: [], // filtered data array | ||
| filterShape: {}, // an object with filter settings | ||
| filterValues: {}, // an object with filter values (text, data, time) |
| # Loading data | ||
|
|
||
| The following information can be loaded into Booking: | ||
| The Booking widget accepts a single dataset through the configuration object: |
There was a problem hiding this comment.
a single dataset
somewhat vague. write "one data array"
| # Working with server | ||
|
|
||
| ## Loading data | ||
| The Booking widget integrates with a backend through two main operations: loading cards data from the server and posting slot reservations back to the server. This guide covers both flows and the UTC conversion needed when server data uses a different timezone. |
|
|
||
| ### Returns | ||
|
|
||
| The method returns an object with the following parameters of state: |
|
|
||
| ### Description | ||
|
|
||
| @short: Allows adding some action into the Event Bus order |
There was a problem hiding this comment.
"some action" sounds very imprecise and hand-wavy
maybe adding an action/actions? only supported actions are allowed, so be more specific
| :::note | ||
| Slot parameters specified for days will override common parameters defined for all days. | ||
| Slot parameters specified for dates will override parameters defined for specific days and all days. | ||
| If several slots objects are created for the same day, make sure that slots time ranges (from and to) with **different** size and gap do not overlap, otherwise all slots data for these days will not be applied. |
There was a problem hiding this comment.
2 negations here make harder to understand what happens if rules conflict, I advise to phrase in a simpler way
No description provided.